package com.zmn.oms.zmn.business.interfaces.serviceItem;

import com.zmn.oms.common.exception.OmsBaseException;
import com.zmn.oms.model.dto.serviceitem.AddOrderServiceItemDTO;
import com.zmn.oms.model.entity.product.OrderProductExtend;
import com.zmn.oms.model.entity.serviceitem.OrderServiceItem;

import java.util.List;

/**
 * 类描述：服务项
 *
 * @author heciqi
 * @date 2018/12/06 14:37
 */
public interface ZsOrderServiceItemBService {
	/**
	 * 获取订单产品扩展
	 * @param orderId
	 * @return
	 */
	List<OrderProductExtend> getOrderProductExtend(Long orderId) throws OmsBaseException;

	/**
	 * 根据订单id查询服务项列表
	 * @param orderId
	 * @return
	 */
	List<OrderServiceItem> listByOrderId(Long orderId);

	/**
	 * 根据订单id，产品扩展id查询服务项列表
	 *
	 * @param orderId
	 * @return
	 */
	List<OrderServiceItem> listByOrderIdAndProExtId(Long orderId, Long proExtId);

	/**
	 * 新增订单服务项
	 *
	 * @param addOrderServiceItemDTO
	 */
	void insertServiceItem(AddOrderServiceItemDTO addOrderServiceItemDTO) throws OmsBaseException;

	/**
	 * 删除订单服务项
	 * @param orderId
	 */
	void deleteServiceItemByOrderId(Long orderId);
}
